using System;
using System.Collections.Generic;
using System.Text;
using SharpMud.MudLib.Common.Entities.Players;
using SharpMud.MudLib.Common.Environment;
using SharpMud.MudLib.Common.Resourcing;
using SharpMud.Server.Systems.Security.Entities;
using SharpMud.MudLib.Common.Interaction.Messaging.Act;

namespace SharpMud.MudLib.NovaSMAUG.Entities.Players
{
    public class SmaugPlayer : IPlayerCharacter
    {
        #region IPlayerCharacter Members

        void IPlayerCharacter.Initialize(IPlayerManager host)
        {
            throw new Exception("The method or operation is not implemented.");
        }

        string IPlayerCharacter.PlayerName
        {
            get { throw new Exception("The method or operation is not implemented."); }
        }

        #endregion

        #region ICharacter Members

        IRoom SharpMud.MudLib.Common.Entities.ICharacter.ParentRoom
        {
            get { throw new Exception("The method or operation is not implemented."); }
        }

        #endregion

        #region IHasInstanceGuid Members

        IGuidIdentifiedResourceHost IHasInstanceGuid.Host
        {
            get { throw new Exception("The method or operation is not implemented."); }
        }

        Guid IHasInstanceGuid.ID
        {
            get { throw new Exception("The method or operation is not implemented."); }
        }

        #endregion

        #region IDescribable Members

        string IDescribable.GetShortDescription(SharpMud.MudLib.Common.Entities.ICharacter looker)
        {
            throw new Exception("The method or operation is not implemented.");
        }

        string IDescribable.GetDeclarativeShortDescription(SharpMud.MudLib.Common.Entities.ICharacter looker)
        {
            throw new Exception("The method or operation is not implemented.");
        }

        string IDescribable.GetIntegralShortDescription(SharpMud.MudLib.Common.Entities.ICharacter looker)
        {
            throw new Exception("The method or operation is not implemented.");
        }

        string IDescribable.GetLongDescription(SharpMud.MudLib.Common.Entities.ICharacter looker)
        {
            throw new Exception("The method or operation is not implemented.");
        }

        #endregion

        #region IUser Members

        UserReference IUser.GetReference()
        {
            throw new Exception("The method or operation is not implemented.");
        }

        bool IUser.HasPassword(string passwordGuess)
        {
            throw new Exception("The method or operation is not implemented.");
        }

        bool IUser.IsInRole(UserRoleReference roleReference)
        {
            throw new Exception("The method or operation is not implemented.");
        }

        bool IUser.IsInRole(IUserRole role)
        {
            throw new Exception("The method or operation is not implemented.");
        }

        bool IUser.IsInRole(string roleName)
        {
            throw new Exception("The method or operation is not implemented.");
        }

        #endregion

        #region IEntity Members

        EntityReference IEntity.GetReference()
        {
            throw new Exception("The method or operation is not implemented.");
        }

        Guid IEntity.ID
        {
            get { throw new Exception("The method or operation is not implemented."); }
        }

        string IEntity.Name
        {
            get { throw new Exception("The method or operation is not implemented."); }
        }

        #endregion

        #region IActMessageReceiver Members

        void IActMessageReceiver.SendMessage(IActMessage message)
        {
            throw new Exception("The method or operation is not implemented.");
        }

        #endregion

        #region IHasInstanceUri Members

        IUriIdentifiedResourceHost IHasInstanceUri.Host
        {
            get { throw new Exception("The method or operation is not implemented."); }
        }

        Uri IHasInstanceUri.ID
        {
            get { throw new Exception("The method or operation is not implemented."); }
        }

        #endregion

        #region IDisposable Members

        void IDisposable.Dispose()
        {
            throw new Exception("The method or operation is not implemented.");
        }

        #endregion
    }
}
